题解:AT_abc473_c [ABC473C] Change Schools

164 字
1 分钟
题解:AT_abc473_c [ABC473C] Change Schools

题目大意#

Takahashi 这个人可以从 1∼k1 \sim k 的所有班级中任选,问有几个选项可以使其他班级的人数都没有他选择的班级人数多。

思路讲解#

可以建桶,记录 Takahashi 这个人没有选择时各班人数,并取一个最大值。

下一步则是暴力枚举每一个班级,如果这个班级人数 +1+1 不小于原来的最大值,则说明这种选择是合法的。答案累加后输出即可。

代码实现#

完整代码
#include<bits/stdc++.h>
using namespace std;
int n,k,a[200005],t[200005],maxx,ans;
int main(){
cin>>n>>k;
for(int i=1;i<=n;i++){
cin>>a[i];
t[a[i]]++;
maxx=max(maxx,t[a[i]]);
}
for(int i=1;i<=k;i++){
if(t[i]+1>=maxx) ans++;
}
cout<<ans;
return 0;
}

文章分享

如果这篇文章对你有帮助,欢迎分享给更多人!

题解:AT_abc473_c [ABC473C] Change Schools
https://zhedaotixuanbo.pages.dev/posts/题解:AT_abc473_c [ABC473C] Change Schools/
作者
zhedaotixuanbo
发布于
2026-08-31
许可协议
CC BY-NC-SA 4.0
Profile Image of the Author
zhedaotixuanbo
这道题选什么? _____!
公告
分类
标签
站点统计
文章
17
分类
1
标签
21
总字数
6,295
运行时长
0 天
最后活动
0 天前
站点信息
构建平台
Cloudflare Pages
博客版本
ZTXB v1.0.0
文章许可
CC BY-NC-SA 4.0